لین کد اگز نظری ثبت نشده باشد دکمه های فیلتر نمایش داده نمیشوند.

<script>
jQuery(document).ready(function ($) {
  // اگر عنصر .woocommerce-noreviews وجود نداشت، یعنی نظری وجود داره
  if ($('.woocommerce-noreviews').length === 0) {
    const filterButtonsHTML = `
      <div id="sigmaweb-review-filters" style="margin-bottom: 15px;">
          <button class="sigmaweb-filter-btn active" data-rating="all">همه</button>
          <button class="sigmaweb-filter-btn" data-rating="5"><i aria-hidden="true" class="fas fa-star"></i> 5</button>
          <button class="sigmaweb-filter-btn" data-rating="4"><i aria-hidden="true" class="fas fa-star"></i> 4</button>
          <button class="sigmaweb-filter-btn" data-rating="3"><i aria-hidden="true" class="fas fa-star"></i> 3</button>
          <button class="sigmaweb-filter-btn" data-rating="2"><i aria-hidden="true" class="fas fa-star"></i> 2</button>
          <button class="sigmaweb-filter-btn" data-rating="1"><i aria-hidden="true" class="fas fa-star"></i> 1</button>
      </div>
    `;

    // اضافه کردن دکمه‌ها بالای نظرات
    $("#comments .woocommerce-Reviews-title").after(filterButtonsHTML);

    // ایجاد عنصر پیام فقط یکبار در ابتدا و مخفی
    if ($("#sigmaweb-no-comments-message").length === 0) {
      $("#comments").append(
        '<p id="sigmaweb-no-comments-message" style="display: none;">نظری با این امتیاز یافت نشد.</p>'
      );
    }

    // کلیک روی دکمه‌ها
    $(document).on("click", ".sigmaweb-filter-btn", function () {
      var rating = $(this).data("rating");

      $(".sigmaweb-filter-btn").removeClass("active");
      $(this).addClass("active");

      $("#sigmaweb-no-comments-message").hide();

      if (rating === "all") {
        $(".commentlist li").show();
      } else {
        $(".commentlist li").hide();

        var filtered = $(".commentlist li").filter(function () {
          return (
            $(this).find('.star-rating[aria-label="امتیاز ' + rating + ' از 5"]')
              .length > 0
          );
        });

        if (filtered.length > 0) {
          filtered.show();
        } else {
          // اگر خالی بود پیام نمایش بده
          $("#sigmaweb-no-comments-message").show();
        }
      }
    });
  }
});
</script>
